ποΈGitΠ―ΡΠ°ποΈ
docs/lt-rLT/user/translate.md chore/remove-misplaced-docs-sync-workflow (1353ba25) Text, 4.10 KB
---
title: Translate the App
parent: User Guide
nav_order: 17
last_updated: 2026-05-13
aliases:
Tff7b72- translate
Tff7b72- crowdin
Tc9d1d9 - localization
Tc9d1d9---
Tc9d1d9# Translate the App
Contributing translations helps make Meshtastic accessible to a wider audience. The app uses [Tff7b72Crowdin](Te6edf3https://crowdin.com/) to manage community translations for both the user interface and in-app documentation.
---
Tc9d1d9## What Gets Translated
| Resource | Source Location | Notes |
| ----------------- | ------------------------------------- | ---------------------------------------------------------------------- |
| UI strings | Ta5d6ff`composeResources/values/strings.xml` | Buttons, labels, messages, and all user-visible text |
| User Guide pages | Ta5d6ff`docs/user/*.md` | In-app documentation shown in Help & Documentation |
| Fastlane metadata | Ta5d6ff`fastlane/metadata/android/en-US/` | App Store listing title, description, and changelogs |
Tff7b72> **Note β Developer Guide pages are English-only.** Code-focused documentation targeting contributors is not translated.
---
Tc9d1d9## How to Contribute
Tff7b721. **Visit the Crowdin project.** Open the [Tff7b72Meshtastic Android Crowdin project](Te6edf3https://crowdin.com/project/meshtastic-android) and sign in or create a free account.
Tff7b722. **Choose your language.** Select an existing language or request a new one by opening a [Tff7b72GitHub issue](Te6edf3https://github.com/meshtastic/Meshtastic-Android/issues/new).
Tff7b723. **Translate strings.** Crowdin shows the English source on the left and your translation on the right. Translate each string and save.
Tff7b724. **Review context.** Many strings include screenshots or context comments β check these to understand where the text appears in the app.
Tff7b725. **Submit.** Approved translations are automatically merged into the next release.
Tff7b72> **Tip β Keep translations short.** UI strings often appear in buttons, chips, or narrow columns. If a translation is significantly longer than the English original, consider abbreviating where the meaning stays clear.
---
Tc9d1d9## Adding a New Language
If your language is not yet listed on Crowdin:
Tff7b721. Open an issue on [Tff7b72GitHub](Te6edf3https://github.com/meshtastic/Meshtastic-Android/issues/new) requesting the new locale.
Tff7b722. A maintainer will add the language to Crowdin and configure Ta5d6ff`crowdin.yml`.
Tff7b723. Once added, you can begin translating immediately.
---
Tc9d1d9## How Translations Are Organized
The Android app uses **Compose Multiplatform resources** for all user-visible strings:
Ta5d6ff```
core/resources/src/commonMain/composeResources/
βββ values/ β English (default)
β βββ strings.xml
βββ values-de/ β German
β βββ strings.xml
βββ values-fr/ β French
β βββ strings.xml
βββ ...
```
In-app documentation follows a similar pattern under Ta5d6ff`docs/`:
Ta5d6ff```
docs/
βββ user/ β English source (default)
β βββ onboarding.md
β βββ ...
βββ fr/user/ β French translations
β βββ onboarding.md
β βββ ...
βββ ...
```
The app automatically selects the correct locale based on your device's **Language & Region** settings.
---
Tc9d1d9## Translation Guidelines
Tff7b72- **Do not translate** technical terms like "LoRa", "MQTT", "BLE", "TAK", "SNR", or "RSSI" β these are universal.
Tff7b72- **Keep placeholders intact.** Strings like Ta5d6ff`%1$s` or Ta5d6ff`%d` are filled in at runtime. Do not remove or reorder them unless the grammar of your language requires it.
Tff7b72- **Match tone.** The app uses a friendly, direct voice. Avoid overly formal language.
Tff7b72- **Test if possible.** Switch your device language and open the app to see how translations look in context.
---
Tc9d1d9## Questions?
If you have questions about a specific string's context or need help getting started, open a discussion on the [Tff7b72Meshtastic GitHub Discussions](Te6edf3https://github.com/meshtastic/Meshtastic-Android/discussions) page.
Thank you for helping expand the reach of Meshtastic!
Served by rngit 1.5.0 - Generated in 0.06s